From: Joey Hess Date: Wed, 10 Sep 2025 17:53:50 +0000 (-0400) Subject: always import Utility.Process rather than System.Process X-Git-Tag: archive/raspbian/10.20251029-1+rpi1~1^2~3^2~120 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=adf1dbb5ca472e7bd15f3e42ad6be1bd7031ad53;p=git-annex.git always import Utility.Process rather than System.Process This is groundwork for Utility.Process doing some extra locking, for which it's important that it's always used for process creation. --- diff --git a/Annex/Multicast.hs b/Annex/Multicast.hs index bc3b2eb3f6..0af2d888db 100644 --- a/Annex/Multicast.hs +++ b/Annex/Multicast.hs @@ -11,7 +11,7 @@ import Common import Annex.Path import Utility.Env -import System.Process +import Utility.Process import GHC.IO.Handle.FD multicastReceiveEnv :: String diff --git a/Build/Mans.hs b/Build/Mans.hs index 56183e30d6..3eec54c6df 100644 --- a/Build/Mans.hs +++ b/Build/Mans.hs @@ -13,8 +13,7 @@ import System.Directory import System.FilePath import Data.List import Control.Monad -import System.Process -import System.Exit +import Utility.SafeCommand import Data.Maybe import Utility.Exception import Control.Applicative @@ -37,16 +36,16 @@ buildMans = do destm <- catchMaybeIO $ getModificationTime dest if (Just srcm > destm) then do - r <- system $ unwords - -- Run with per because in some - -- cases it may not be executable. - [ "perl", "./Build/mdwn2man" - , progName src - , "1" - , src - , "> " ++ dest + -- Run with perl because in some + -- cases it may not be executable. + r <- boolSystem "perl" $ + [ Param "./Build/mdwn2man" + , Param $ progName src + , Param "1" + , Param src + , Param $ "> " ++ dest ] - if r == ExitSuccess + if r == True then return (Just dest) else return Nothing else return (Just dest) diff --git a/Build/Version.hs b/Build/Version.hs index 762714e89f..216f3133bb 100644 --- a/Build/Version.hs +++ b/Build/Version.hs @@ -8,7 +8,6 @@ module Build.Version where import Data.List import System.Environment import Data.Char -import System.Process import Control.Applicative import Prelude @@ -16,6 +15,7 @@ import Utility.Monad import Utility.Exception import Utility.OsPath import Utility.FileSystemEncoding +import Utility.Process import qualified Utility.FileIO as F type Version = String @@ -39,7 +39,7 @@ getVersion = do gitversion <- takeWhile (\c -> isAlphaNum c) <$> readProcess "sh" [ "-c" , "git log -n 1 --format=format:'%H'" - ] "" + ] return $ if null gitversion then changelogversion else concat diff --git a/Types/CleanupActions.hs b/Types/CleanupActions.hs index 418472ef3e..a15917fc1e 100644 --- a/Types/CleanupActions.hs +++ b/Types/CleanupActions.hs @@ -10,7 +10,7 @@ module Types.CleanupActions where import Types.UUID import Utility.Url -import System.Process (Pid) +import Utility.Process (Pid) data CleanupAction = RemoteCleanup UUID diff --git a/Utility/Process.hs b/Utility/Process.hs index f9dd94ec8e..81fbef30bd 100644 --- a/Utility/Process.hs +++ b/Utility/Process.hs @@ -1,7 +1,7 @@ {- System.Process enhancements, including additional ways of running - processes, and logging. - - - Copyright 2012-2020 Joey Hess + - Copyright 2012-2025 Joey Hess - - License: BSD-2-clause -} @@ -36,7 +36,7 @@ module Utility.Process ( ) where import qualified Utility.Process.Shim -import Utility.Process.Shim as X (CreateProcess(..), ProcessHandle, StdStream(..), CmdSpec(..), proc, getPid, getProcessExitCode, shell, terminateProcess, interruptProcessGroupOf) +import Utility.Process.Shim as X (CreateProcess(..), ProcessHandle, StdStream(..), CmdSpec(..), proc, getPid, getProcessExitCode, shell, terminateProcess, interruptProcessGroupOf, Pid) import Utility.Misc import Utility.Exception import Utility.Monad